# coding=utf-8
import sys
# 方法1
#reload(sys)
#sys.setdefaultencoding('utf8')
#print sys.getdefaultencoding()
#s = "发动".decode() #如果不指定编码，则使用python默认的编码进行解码,python默认编码是ASCII,可以通过sys.setdefaultcoding('编码')来修改

# 方法2
s = "发动".decode('utf-8') 
raw_input(s.encode('GBK'))
#print u'发动'
print unicode('发动','utf-8') #print 可能有一步操作是将 自动转成本地的编码
print '发动'
# raw_input 接收的参数是 的编码与控制台的编码一致

#总结
# raw_input 和 print 传给操作系统的都是2进制 str
# 不同的是raw_input需要手动编码，而print如果是unicode则自动编码，是str就不编码
# print后面有中文直接前面填个u
# raw_input需要正确编码，否则显示乱码

print sys.maxunicode
